home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Network Support Library
/
RoseWare - Network Support Library.iso
/
apidev
/
tpapi.exe
/
NWFSYST.PA1
< prev
next >
Wrap
Text File
|
1994-01-14
|
15KB
|
249 lines
{#Z+}
(*(10U&l12D(s4099T&k2S*)
{***************************************************************************}
{** Program : NWFSYST **}
{***************************************************************************}
{** Version : 1.4 ** Started : 11/11/91 ** Ended : / / **}
{***************************************************************************}
{******************************** Description ******************************}
{***************************************************************************}
{** OOP library for Netware API **}
{** **}
{** This unit forms the second level object : FILESYSTEM **}
{** This object is a descandent of : NETWARE **}
{** **}
{** **}
{** **}
{** **}
{***************************************************************************}
{******************************** Information ******************************}
{***************************************************************************}
{** Provides Netware Directory Services **}
{** **}
{** **}
{** **}
{** This code is (c) 1991 - 1994 Antonio Covelli. ALL RIGHTS RESERVED. **}
{** Portions (c) Novell Inc, **}
{** **}
{** **}
{***************************************************************************}
{$I NETWARE.INC}
{#Z-}
UNIT NWFSYST;
INTERFACE
USES
nwvar,
netware;
TYPE
pFileSystemOBJ = ^FileSystemOBJ;
FileSystemOBJ = OBJECT (NetwareOBJ)
function AddExtFileDirectoryTrustee (DirectoryHandle : byte; ObjectID : OT_BinderyID;
TrusteeRights : word; DirectoryPath : TPathName) : word;
FUNCTION AddTrusteeToDirectory (DirectoryHandle : BYTE; DirectoryPath : TPathName;
ObjectID : OT_BinderyID; TrusteeRightsMask : BYTE) : WORD;
FUNCTION AllocPermanentDirectoryHandle (DirectoryHandle : BYTE; DirectoryPath : TPathName;
DriveLetter : CHAR; VAR NewDirectoryHandle,
EffectiveRightsMask : BYTE; MapDrive : boolean) : WORD;
FUNCTION AllocSpecialTemporaryDirectoryHandle (DirectoryHandle : BYTE; DirectoryPath : TPathName;
DriveLetter : CHAR; VAR NewDirectoryHandle,
EffectiveRightsMask : BYTE) : WORD;
FUNCTION AllocTemporaryDirectoryHandle (DirectoryHandle : BYTE;
DirectoryPath : TPathName;
DriveLetter : CHAR;
VAR NewDirectoryHandle,
EffectiveRightsMask : BYTE;
MapDrive : boolean) : WORD;
{The above function is in NETWARE.PAS}
FUNCTION ClearVolRestrictions (ConnectionID : WORD; VolumeNumber : BYTE; ObjectID : OT_BinderyType) : WORD;
FUNCTION CreateDirectory (DirectoryHandle : BYTE; DirectoryPath : TPathName;
MaximumRightsMask : BYTE) : WORD;
FUNCTION DeallocateDirectoryHandle (DirectoryHandle : BYTE) : WORD;
{The above function is in NETWARE.PAS}
FUNCTION DeleteDirectory (DirectoryHandle : BYTE; DirectoryPath : TPathName) : WORD;
FUNCTION DeleteTrustee (ConnectionID : WORD; DirectoryHandle : BYTE; DirectoryPath : TPathName;
ObjectID : OT_BinderyID) : WORD;
FUNCTION DeleteTrusteeFromDirectory (DirectoryHandle : BYTE; DirectoryPath : TPathName;
ObjectID : OT_BinderyID) : WORD;
FUNCTION EraseFiles (DirectoryHandle : BYTE; DirectoryPath : TPathName;
SearchAttributes : BYTE) : WORD;
FUNCTION FileServerFileCopy (VAR SourceFile, DestinationFile : FileOfByte; SourceFileOffset,
DestinationFileOffset, NumberOfBytesToCopy : LONGINT;
VAR NumberOfBytesCopied : LONGINT) : WORD;
FUNCTION GetCurrentDirectory (DriveNumber : BYTE; VAR DirectoryPath : TPathName) : WORD;
FUNCTION GetDirectoryHandle (DriveNumber : BYTE) : BYTE;
{The above function is in NETWARE.PAS}
FUNCTION GetDirectoryPath (DirectoryHandle : BYTE; VAR DirectoryPath : TPathName) : WORD;
{The above function is in NETWARE.PAS}
FUNCTION GetDirEntry (ConnectionID : WORD; DirectoryHandle : BYTE;
VAR DirectoryEntry : NWDir_Entry) : WORD;
FUNCTION GetDirectoryInformation (ConnectionID : WORD; DirectoryHandle : BYTE;
VAR DirectoryInfo : NWDir_Info) : WORD;
FUNCTION GetDriveInformation (DriveNumber : BYTE; VAR ConnectionID : WORD; VAR DirectoryHandle : BYTE) : BYTE;
{The above function is in NETWARE.PAS}
FUNCTION GetEffectiveDirectoryRights (DirectoryHandle : BYTE; DirectoryPath : TPathName;
VAR EffectiveRightsMask : BYTE) : WORD;
FUNCTION GetEffectiveRights (ConnectionID : WORD; DirectoryHandle : BYTE;
DirectoryPath : TPathName; VAR TrusteeRights : WORD) : WORD;
FUNCTION GetExtendedFileAttributes (FilePath : TPathName; VAR ExtendedFileAttributes : BYTE) : WORD;
FUNCTION GetObjectDiskRestrictions (ConnectionID : WORD; VolumeNumber : BYTE; ObjectID : OT_BinderyID;
VAR VolumeRestriction, BlocksInUse : LONGINT) : WORD;
PROCEDURE GetSearchDriveVector (VAR VectorBuffer : TByte17Array);
FUNCTION GetVolumeInformation (ConnectionID : WORD; VolumeNumber : BYTE; StructureSize : WORD;
VAR VolumeStatistics : Volume_Stats) : WORD;
FUNCTION GetVolumeInfoWithHandle (DirectoryHandle : BYTE; VAR VolumeName : TVolumeName;
VAR TotalBlocks, SectorsPerBlock, AvailableBlocks,
TotalDirectorySlots, AvailableDirectorySlots,
VolumeIsRemovable : WORD) : WORD;
FUNCTION GetVolumeInfoWithNumber (VolumeNumber : BYTE; VAR VolumeName : TVolumeName;
VAR TotalBlocks, SectorsPerBlock, AvailableBlocks,
TotalDirectorySlots, AvailableDirectorySlots,
VolumeIsRemovable : WORD) : WORD;
FUNCTION GetVolumeName (VolumeNumber : BYTE; VAR VolumeName : TVolumeName) : WORD;
FUNCTION GetVolumeNumber (VolumeName : TVolumeName; VAR VolumeNumber : BYTE) : WORD;
FUNCTION GetVolUsage (ConnectionID : WORD; VolumeNumber : BYTE;
VAR VolumeUsage : NWVol_Usage) : WORD;
FUNCTION IsSearchDrive (DriveLetter : CHAR) : WORD;
FUNCTION MapV2TrusteeRightsToV3 (TrusteeRights : BYTE) : LONGINT;
FUNCTION MapV3TrusteeRightsToV2 (TrusteeRights : LONGINT) : BYTE;
FUNCTION ModifyMaximumRightsMask (DirectoryHandle : BYTE; DirectoryPath : TPathName;
RevokeRightsMask, GrantRightsMask : BYTE) : WORD;
FUNCTION PurgeAllErasedFiles : WORD;
FUNCTION PurgeErasedFiles : WORD;
FUNCTION PurgeSalvagableFile (ConnectionID : WORD; DirectoryHandle : BYTE; EntryID : LONGINT;
FileName : TPathName) : WORD;
FUNCTION RecoverErasedFile (DirectoryHandle : BYTE; VolumeName : TVolumeName;
VAR ErasedFileName, RestoredFileName : TFileName) : WORD;
FUNCTION RecoverSalvagableFile (ConnectionID : WORD; DirectoryHandle : BYTE; EntryID : LONGINT;
FileName, NewFileName : TPathName) : WORD;
FUNCTION RenameDirectory (DirectoryHandle : BYTE; DirectoryPath : TPathName;
NewDirectoryName : TDirectoryName) : WORD;
FUNCTION RestoreDirectoryHandle (SaveBuffer : TByte14Array; VAR NewDirectoryHandle,
EffectiveRightsMask : BYTE) : WORD;
FUNCTION SaveDirectoryHandle (DirectoryHandle : BYTE; VAR SaveBuffer : TByte14Array) : WORD;
FUNCTION ScanBinderyObjectTrusteePaths (ObjectID : OT_BinderyID;
VolumeNumber : BYTE;
VAR SequenceNumber : WORD;
VAR TrusteeAccessMask : BYTE;
VAR TrusteePathName : TPathName) : WORD;
{The above function is in NETWARE.PAS}
FUNCTION ScanDirectoryForTrustees (DirectoryHandle : BYTE; DirectoryPath : TPathName;
VAR SequenceNumber : WORD; VAR DirectoryName : TDirectoryName;
VAR CreationDateAndTime : TByte4Array; VAR OwnerID : OT_BinderyID;
VAR TrusteeIDs : TLongint5Array; VAR TrusteeRights : TByte5Array) : WORD;
FUNCTION ScanDirectoryInformation (DirectoryHandle : BYTE; SearchDirectoryPath : TPathName;
VAR SequenceNumber : WORD; VAR DirectoryName : TDirectoryName;
VAR CreationDateAndTime : TByte4Array; VAR OwnerID : OT_BinderyID;
VAR MaximumRightsMask : BYTE) : WORD;
FUNCTION ScanDirEntry (ConnectionID : WORD; DirectoryHandle : BYTE; SearchPath : TPathName;
SearchAttributes : BYTE; VAR Sequence : LONGINT;
VAR DirectoryEntry : NWDir_Entry) : WORD;
FUNCTION ScanDirRestrictions (ConnectionID : WORD; DirectoryHandle : BYTE; VAR OutBuffer;
NumberOfStructuresToReturn : BYTE) : WORD;
function ScanFileDirectoryExtTrustees (DirectoryHandle : byte; var SequenceNumber : byte;
DirectoryPath : TPathName; var TrusteeIDs : TLongint20Array;
var TrusteeRights : TWord20Array) : word;
FUNCTION ScanFileEntry (ConnectionID : WORD; DirectoryHandle : BYTE; SearchPath : TPathName;
SearchAttributes : BYTE; VAR Sequence : LONGINT;
VAR FileEntry : NWFile_Entry) : WORD;
FUNCTION ScanFileInformation (DirectoryHandle : BYTE; FilePath : TPathName; SearchAttributes : BYTE;
VAR SequenceNumber : INTEGER; VAR FileName : TFileName;
VAR FileAttributes, ExtendedFileAttributes : BYTE; VAR SizeOfFile : LONGINT;
VAR CreationDate, LastAccessDate : WORD; VAR LastUpdateDateAndTime,
LastArchiveDateAndTime : LONGINT; VAR FileOwnerID : OT_BinderyID) : WORD;
FUNCTION ScanFilePhysical (ConnectionID : WORD; DirectoryHandle : BYTE; SearchPath : TPathName;
SearchAttributes : BYTE; VAR Sequence : LONGINT;
VAR FileEntry : NWPhys_Entry) : WORD;
FUNCTION ScanSalvagableFiles (ConnectionID : WORD; DirectoryHandle : BYTE; VAR EntryID : LONGINT;
VAR SalvEntry : NWSalv_Entry) : WORD;
FUNCTION SetDirectoryHandle (SourceDirectoryHandle : BYTE; SourceDirectoryPath : TPathName;
TargetDirectoryHandle : BYTE) : WORD;
FUNCTION SetDirectoryInformation (DirectoryHandle : BYTE; DirectoryPath : TPathName;
NewCreationDateAndTime : TByte4Array;
NewOwnerObjectID : OT_BinderyID; NewRightsMask : BYTE) : WORD;
FUNCTION SetDirRestriction (ConnectionID : WORD; DirectoryHandle : BYTE;
Restriction : LONGINT) : WORD;
FUNCTION SetFileAttributes (DirectoryHandle, SearchAttributes : byte;
Filepath : TPathName; FileAttributes : BYTE) : WORD;
FUNCTION SetFileExtendedAttributes (DirectoryHandle, SearchAttributes : byte;
Filepath : TPathName; ExtendedFileAttributes : BYTE) : WORD;
FUNCTION SetFileInformation (DirectoryHandle : BYTE; FilePath : TPathName; SearchAttributes,
FileAttributes, ExtendedFileAttributes : BYTE; CreationDate,
LastAccessDate : WORD; LastUpdateDateAndTime,
LastArchiveDateAndTime : LONGINT; FileOwnerID : OT_BinderyID) : WORD;
PROCEDURE SetSearchDriveVector (VAR VectorBuffer : TByte17Array);
FUNCTION SetVolRestriction (ConnectionID : WORD; VolumeNumber : BYTE; ObjectID : OT_BinderyID;
Restriction : LONGINT) : WORD;
DESTRUCTOR Done; VIRTUAL;
END;